package com.hiraeth.modules.monitor.model.global;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

import java.io.Serializable;
import java.util.Map;

@Data
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class GlobalConfig implements Serializable {

	private static final long serialVersionUID = 6424200420045940110L;

	/**
	 * 从targets抓取数据的周期，默认1分钟。[duration]匹配正则表达式 [0-9]+(ms|[smhdwy])的持续时长
	 */
	private String scrape_interval;
	
	/**
	 * 估算规则的周期。默认1分钟。[duration]匹配正则表达式 [0-9]+(ms|[smhdwy])的持续时长
	 */
	private String evaluation_interval;

	/**
	 * 抓取超时阈值，默认10秒。[duration]匹配正则表达式 [0-9]+(ms|[smhdwy])的持续时长
	 */
	private String scrape_timeout;
	
	/**
	 * 和外部系统（例如federation， remote storage， Alertmanager）通信时为时间序列或者警情（Alert）强制添加的标签列表
	 */
	private Map<String, Object>  external_labels;
	
	/**
	 * File to which Prom_qL queries are logged. Reloading the configuration will reopen the file.
	 */
	private String query_log_file;
}
